package com.seu.spring.advance.aop;

/**
 * 代理模式中原始目标对象
 *
 * @author liangfeihu
 * @since 2018/12/28 17:30
 */
public class TargetSource {

    private Class<?> targetClass;

    private Class<?>[] interfaces;

    /**
     * 目标对象(被代理的对象)
     */
    private Object target;

    public TargetSource(Object target, Class<?> targetClass, Class<?>... interfaces) {
        this.target = target;
        this.targetClass = targetClass;
        this.interfaces = interfaces;
    }

    public Class<?> getTargetClass() {
        return targetClass;
    }

    public Object getTarget() {
        return target;
    }

    public Class<?>[] getInterfaces() {
        return interfaces;
    }

}
